There are many situations in which one or more people monitor information regarding the status and performance of the same system. As computerized display systems become increasingly commonplace, more information from a variety of systems and subsystems is available for display on a computer monitor. The systems may be stationary, such as power plants, or mobile, such as boats or airplanes. In either case, the interface between two or more operators with the system must often be coordinated, with each having access to the same information, while allowing only one to provide input to a particular subsystem at a time.
There are other situations, however, when two or more operators can perform separate tasks relevant to the same system or subsystem independently of one another. In such situations, it is often more convenient for each operator to have the ability to access different types of information regarding the system that is most relevant to the task being performed.
Further, the size and number of operator controls and displays is often limited due to space, weight, power consumption, and cost considerations. This is especially true in highly mobile systems such as airplanes.
Systems capable of displaying information on multiple monitors are currently available. For example, the various versions of the Windows Operating System from Microsoft Corporation allows a user to connect multiple monitors to a host computer, configure the monitors to display different windows of information, and provide input to different application programs executing on the host computer using devices such as a keyboard and mouse. User interfaces and information output from the different application programs can be displayed on one or more of the monitors, thereby providing a “multi-tasking” environment for the user. A user can position and size the “windows” on the display for each application program as desired. Additionally, remote users can log into a particular host computer via a network interface, view copies of the user interfaces and information generated by the application programs, as well as provide input to the application programs via the user interfaces.
The display windowing capability in a personal computer environment typically does not allow two or more users to simultaneously view different information using the same copy of the application program. In order to provide this capability, different copies of the same application program must be invoked or executed by each user. Common information can be shared between copies of the application program via a database. Depending on the application program, a user can often invoke the same application program in two or more windows to display different information from the common database, as well as interface with different portions of the application program in each window.
One drawback with known display windowing capability, such as the Microsoft Windows Operating System, is the lack of a common interface to interact with various portions of each copy of the application program, or even with two windows running different applications programs. The interface menus and options are repeated in each window, which wastes valuable display area and creates an inefficient user interface for the application program.
Another drawback with known display windowing capability is that each time the user invokes another copy of the application program, the associated window appears in the middle of the display. The window typically obscures some or all of the information in the other windows on the display, and must be manually resized and moved to the desired location on the display. Resizing and repositioning windows can be a very cumbersome and inefficient process, especially when the operator is performing critical tasks, such as responding to an alarm, under time constraints.
Some application programs use a feature referred to as “frames”, which are multiple, independently controllable sections on a display. On web pages with frames, for example, each frame section is built as a separate hypertext markup language (HTML) file with one “master” HTML file to identify all of the frame sections. When a user requests a web page that uses frames, the address requested is actually that of the “master” file that defines the frames. The result of the request is that multiple HTML files are returned, one for each visual frame section. Links in one frame can request another file that will appear in another (or the same) frame. A typical use of frames is to have one frame containing a selection menu and another frame containing the space where the selected files will appear. A user cannot dynamically control the type of information that is displayed in each frame, or the size or location of each frame on the display, however. The application program that generates the display must be reprogrammed offline to alter the size, location, and content in the frames.
Other software programs, such as gaming applications, generate displays on different monitors from each participant's viewpoint. Each participant has a set of input devices to control various aspects of the game. In some programs, a user can select options to display various types of information relevant to their participation in the game. Similar to the frames feature discussed hereinabove, however, the position, size, and content of the information cannot be dynamically customized by the user, nor is a common window for displaying more detailed information for any selected frame available.